perm filename SMPLS.F4[P11,LCS]2 blob
sn#426312 filedate 1979-03-19 generic text, type T, neo UTF8
C***** SMPLS.F4 (CALLED 'WAVES' AT IRCAM)**************
C DISPLAYS SAMPLES (WAVES) OF .DAT FILES PRODUCED BY PASS3, MUSIC5.
C LOAD WITH 'OPEN' FOR IO ROUTINES.
COMMON /DEVS/ID1,ID21,JTYPE,ID23,ID20
DIMENSION I(512),ILI(1),L(131)
EQUIVALENCE (I1,I),(I2,I(2)),(I3,I(3)),(AMP,MAXAMP)
DATA BLA/' '/,IAST/'*'/,TEST/'TEST'/
DATA IFF/'F'/,SMPS/'SMPS'/,IBLA/' '/
1212 IDEV=5
C***** 5=TTY, 1=DSK
LCNT=20
LEND=130
KOLD=130
C JUNPAC IS FOR OTHER THAN 12-BIT SMPLS. NOT USED YET.
JUNPAC=0
JNCX=0
KCNT=0
ICNT=0
WRITE(JTYPE,30)
READ(JTYPE,31)FLNM
IF(FLNM.EQ.BLA)FLNM=TEST
CALL DISKO(ID21,FLNM,-1)
C OPEN AN INPUT FILE
C//// KBIT=3
C//// IAMP=131000
C//// DUR=ISMPLS/DUR
C**** NEXT 2 FOR PDP11 VERSION (12BIT ONLY NOW)
IAMP=2080
JAMP=51
ISMPLS=32000
K40=40
IFLIP=0
NCH=1
IF(NCHNS.LT.2)GO TO 33
WRITE(JTYPE,34)
34 FORMAT(' TYPE CHNL NUM. '$)
IFLIP=-1
READ(JTYPE,1)NCH
IF(NCH.EQ.0)NCH=1
IF(NCH.NE.1)IFLIP=-IFLIP
33 WRITE(JTYPE,47)
READ(JTYPE,46)INCX
IF(INCX.EQ.0)INCX=1
WRITE(JTYPE,40)
F=0
READ(JTYPE,46)ISKP,LAST,NORM
C***************************************************************
C************* YOU MUST PUT COMMAS BETWEEN INPUT NUMBERS *******
C***************************************************************
IF(LAST.EQ.0)LAST = ISKP+100
C IF NO NUMBER IS TYPED FOR 'LAST' ISKP+100 SAMPLES ARE DISPLAYED.
IF(LAST.LT.ISKP)LAST=ISKP+LAST
IF(LAST.GT.ISMPLS)LAST=ISMPLS
IF(ISKP.NE.0)ISKP=ISKP-1
50 FORMAT(' <CR>=DPY F=TO A FILE '$)
51 FORMAT(' <CR>=LPT FORMAT D=DPY FORMAT '$)
WRITE(JTYPE,50)
READ(JTYPE,31)IDSK
IF(IDSK.NE.IFF)GO TO 45
WRITE(JTYPE,51)
READ(JTYPE,31)FL
CALL DISKO(ID1,SMPS,0)
C OPEN AN OUTPUT FILE
LCNT=50
WRITE(JTYPE,44)
44 FORMAT(/' WRITING FILE: SMPS.DAT',/)
CC 1 ' TO STOP: TYPE <CALL>, F <CR>')
144 IDEV=1
C** FOR DSK OUTPUT.
40 FORMAT(' TYPE SAMPLE NUM.1, NUM2 '$)
1 FORMAT(8I9)
46 FORMAT(8I)
31 FORMAT(2A4)
30 FORMAT(' TYPE FILE NAME '$)
5 FORMAT(1X80A1)
CC JAMP=51
CC IF(JUNPAC.NE.0)JAMP=1637
45 IF(FL.NE.BLA)GO TO 2
CC45 IF(IFL.NE.IBLA)GO TO 102
JAMP=32
CC IF(JUNPAC.NE.0)JAMP=1007
K40=65
GO TO 2
CC102 IF(JUNPAC.NE.0)GO TO 2
CC202 IF(MAXAMP.GT.1900)GO TO 2
C//// IF(K.NE.'N')GO TO 2
C//// JAMP=IAMP/40
C//// DO 3 K=1,1024
2 READ(ID21)I
DO 3 JJ=1,512
IFLIP=-IFLIP
ICNT=ICNT+1
IF(ICNT.LT.ISKP)GO TO 3
IF(ICNT.GT.LAST)GO TO 41
IF(IFLIP)GO TO 3
C****** STEREO FLIP-FLOP
JNCX=JNCX+1
IF(JNCX.NE.INCX)GO TO 3
JNCX=0
99 KX=I(JJ)
KK=(KX+IAMP)/JAMP
KF=-1
KZZ=6
CC IF(MOD(ICNT,100).NE.0)GO TO 997
KCNT=KCNT+1
IF(KCNT.LT.LCNT)GO TO 997
KCNT=0
KF=0
KZZ=14
997 IF(KOLD.EQ.KK)GO TO 777
K80=KOLD
IF(KK.GT.KOLD)K80=KK
IF(KK.GE.LEND)LEND=K40
DO 4 KM=6,LEND
4 L(KM)=IBLA
400 LEND=KK
INC=-1
IF(KK.GE.K40)INC=-INC
DO 999 KZ=K40,KK,INC
999 L(KZ)=IAST
998 KZ=KK
KOLD=KK
IF (KZ.GE.K40)GO TO 777
KZ=K40
777 IF(KF)GO TO 7
WRITE(IDEV,106)FLNM,ICNT,(L(NN),NN=11,KZ)
IF(IDEV.EQ.1)WRITE(JTYPE,106)FLNM,ICNT
C***TELL HOW FAR ALONG WE ARE.
GO TO 3
CC7 IF(JUNPAC.NE.0)GO TO 778
7 WRITE(IDEV,1105)KX,(L(NN),NN=6,KZ)
GO TO 3
778 WRITE(IDEV,105)KX,(L(NN),NN=9,KZ)
3 CONTINUE
GO TO 2
CCCC********41 CALL CLOSE(21)
41 GO TO 1212
47 FORMAT(' INCREMENT = '$)
105 FORMAT(I9,122A1)
1105 FORMAT(I6,124A1)
106 FORMAT(1XA4,I6,120A1)
END